package BYD;

/**
 * @author ht
 * @create 2025-06-28 18:02
 * @desc
 **/
public class T1 {

/*    给定一个长度为 n 的数组 a 和一个长度同样为 n 的字符串 s。字符串 s 由字符 'R' 和 'B' 组成。需要计算所有“红黑数”的和，其中“红黑数”定义为：对于每个 'R' 和 'B'，它们在数组 a 中对应位置的元素相乘得到的值。最后，将结果对 (10^9 + 7) 取模。
    例如 输入：n = 3，a = [1, 2, 5]，s = "RBB"，输出7
    因此，在累加过程中逐步取模，等价于最后总和取模的结果
    */

    public static void main(String[] args) {
        int[] nums = new int[]{3,4,5,6,8};
        String[] str = new String[]{"R", "B", "R","B","R"};

        long MOD = 1000000000 + 7;
        long sumR = 0;
        long sumB = 0;
        for (int i = 0; i < nums.length; i++) {
            String s = str[i];
            if(s.equals("R")) {
                sumR += nums[i] % MOD;
            } else {
                sumB += nums[i] % MOD;
            }
        }
        System.out.println((sumR * sumB) % MOD);
    }


}
